/* eslint-disable */
export * from './components'

import {PhLoadingState} from 'ph-loading'
import {PhAlertOpt,PhConfirmOpt,PhModelShowRetrun} from 'ph-modal'
import {PhMsgOpt,PhMsgReturn} from 'ph-message'
import {PhNotifyOpt,PhNotifyReturn} from 'ph-notification'

import PhTooltip,{PhTooltipDirective} from './directives/tooltip'
export {
    PhTooltip,
    PhTooltipDirective
}
//下一版直接放到colorpicker内部导出
export interface PhColorpickerOpt{
    left:number,
    top:number,
    height:number,
    width:number,
    preshow?:boolean,
    precolors?:string[],
    [k:string]:any
}
export interface PhDatepickerOpt{
    mode:string,
    left:number,
    top:number,
    width:number,
    height:number,
    format?:string,
    start?:string,
    end?:string,
    theme?:string,
    weekText?:string[],
    importants?:Array<{title:string|number,md:string,desc:string}>,
    clear?:boolean,
    now?:boolean,
    [k:string]:any
}
interface PhDoneResult{
    done:(fn:(...a:any[])=>void)=>void
}
/* eslint-disable */
export interface Phoeon{
    $phDatetimePicker : (c:string,opt:PhDatepickerOpt)=>PhDoneResult,
    $phDDatetimePicker : (s:string,e:string,opt:PhDatepickerOpt)=>PhDoneResult,
    $phColorPicker : (c:string,opt:PhColorpickerOpt)=>PhDoneResult,
    $phLoading : {
        show:(opt?:PhLoadingState)=>void,
        hide:()=>void
    },
    $phMessage : (c:string,opt?:PhMsgOpt)=>PhMsgReturn,

    $phAlert: (msg:string,opt?:PhAlertOpt) => void,
    $phConfirm: (msg:string,opt?:PhConfirmOpt) => PhModelShowRetrun,

    $phNotify : (c:string,opt?:PhNotifyOpt)=>PhNotifyReturn,
    $phToast: (msg:string,duration?:number) => void
}